_redisplay: function() {
this.removeAll();
- let windows = this._source.app.get_windows();
+ let windows = this._source.app.get_windows().filter(function(w) {
+ return Shell.WindowTracker.is_window_interesting(w);
+ });
// Display the app windows menu items and the separator between windows
// of the current desktop and other windows.
* shell_app_get_windows:
* @app:
*
- * Get the toplevel, interesting windows which are associated with this
- * application. The returned list will be sorted first by whether
- * they're on the active workspace, then by whether they're visible,
- * and finally by the time the user last interacted with them.
+ * Get the windows which are associated with this application. The
+ * returned list will be sorted first by whether they're on the
+ * active workspace, then by whether they're visible, and finally
+ * by the time the user last interacted with them.
*
* Returns: (transfer none) (element-type MetaWindow): List of windows
*/
{
ShellApp *app;
- if (!shell_window_tracker_is_window_interesting (window))
- return;
-
app = get_app_for_window (self, window);
if (!app)
return;
g_hash_table_remove (self->window_to_app, window);
- if (shell_window_tracker_is_window_interesting (window))
- {
- _shell_app_remove_window (app, window);
- g_signal_handlers_disconnect_by_func (window, G_CALLBACK(on_wm_class_changed), self);
- }
+ _shell_app_remove_window (app, window);
+ g_signal_handlers_disconnect_by_func (window, G_CALLBACK(on_wm_class_changed), self);
g_signal_emit (self, signals[TRACKED_WINDOWS_CHANGED], 0);